09 |
您所在的位置:网站首页 › containerd 配置文件介绍 › 09 |
1 私有镜像仓库配置参考
K3s 默认使用 containerd 作为容器运行时,所以在 docker 上配置镜像仓库是不生效的[ 除非将容器运行时环境设置为Docker,本篇以containerd作为容器运行时环境 ] K3s registry 配置目录为: /etc/rancher/k3s/registries.yaml。K3s 启动时,K3s 会检查 /etc/rancher/k3s/ 中是否存在 registries.yaml 文件,并指示 containerd 使用文件中定义的镜像仓库。如果你想使用一个私有的镜像仓库,那么你需要在每个使用镜像仓库的节点上以 root 身份创建这个文件。 请注意,server 节点默认是可以调度的。如果你没有在 server 节点上设置污点,那么将在它们上运行工作负载,请确保在每个 server 节点上创建 registries.yaml 文件。 1.1 镜像仓库配置文件K3s 镜像仓库配置文件由两大部分组成:mirrors 和 configs Mirrors 是一个用于定义专用镜像仓库的名称和 endpoint 的指令Configs 部分定义了每个 mirror 的 TLS 和证书配置。对于每个 mirror,你可以定义auth和/或tlscontainerd 使用了类似 Kubernetes 中 svc 与 endpoint 的概念,svc 可以理解为访问名称,这个名称会解析到对应的 endpoint 上。 也可以理解 mirror 配置就是一个反向代理,它把客户端的请求代理到 endpoint 配置的后端镜像仓库。mirror 名称可以随意填写,但是必须符合IP或域名的定义规则。并且可以配置多个 endpoint,默认解析到第一个 endpoint,如果第一个 endpoint 没有返回数据,则自动切换到第二个 endpoint,以此类推。 示例: # mirrors 可以定义多个私有镜像仓库的名称 mirrors: "172.31.6.200:5000": # 私有镜像仓库的名称 endpoint: - "http://172.31.6.200:5000" - "http://x.x.x.x:5000" - "http://y.y.y.y:5000" "rancher.ksd.top:5000": # 私有镜像仓库的名称 endpoint: - "http://172.31.6.200:5000" "docker.io": # 私有镜像仓库的名称 endpoint: - "https://fogjl973.mirror.aliyuncs.com" - "https://registry-1.docker.io" # 类似于Kubernetes 的Service和Endpoint的关系 # configs 配置私有镜像仓库的相应的用户名和密码以及证书信息 configs: "172.31.6.200:5000": auth: username: admin password: Harbor@12345 tls: cert_file: /home/ubuntu/harbor2.kingsd.top.cert key_file: /home/ubuntu/harbor2.kingsd.top.key ca_file: /home/ubuntu/ca.crt可以通过 crictl pull 172.31.6.200:5000/library/alpine 和 crictl pull rancher.ksd.top:5000/library/alpine 获取到镜像,但镜像都是从同一个仓库获取到的。 root@rancher-server:/etc/rancher/k3s# systemctl restart k3s.service root@rancher-server:/etc/rancher/k3s# crictl pull 172.31.6.200:5000/library/alpine Image is up to date for sha256:a24bb4013296f61e89ba57005a7b3e52274d8edd3ae2077d04395f806b63d83e root@rancher-server:/etc/rancher/k3s# crictl pull rancher.ksd.top:5000/library/alpine Image is up to date for sha256:a24bb4013296f61e89ba57005a7b3e52274d8edd3ae2077d04395f806b63d83e 1.2 搭建 Harbor 私有镜像仓库 1.2.1 部署Harbor私有镜像仓库 # Step1: 安装Docker容器运行时环境 # 在 K3s 节点上安装 Docker。可以使用 Rancher 的一个Docker 安装脚本来安装 Docker: $ curl https://releases.rancher.com/install-docker/19.03.sh | sh # Step2: 配置镜像加速器 sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json cfssl.sh 8443/tcp redis redis-server /etc/redis.conf Up (healthy) registry /home/harbor/entrypoint.sh Up (healthy) registryctl /home/harbor/start.sh Up (healthy)浏览器访问:http:s//也可以修改主机的host文件将IP地址 域名进行绑定。可以查看浏览器的证书。 默认用户名:admin 默认密码:Harbor12345 Harbor 镜像仓库可以正常使用,并且创建一个 k3s 的项目 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |